#ifndef H_MACROS_20071013
#define H_MACROS_20071013

#define		CHAN_MAXNAMESIZE		32
#define		CHAN_MAXTOPICSIZE		128

/*temporal limits*/
#define		CHAN_MAXBLACKLIST		20
#define		CHAN_MAXUSERS			30

/* just for formality */
#define MAX_SERVER_COMMANDS		100

/*	network consts	*/
#define MAXQUEULEN	5

/*	formats	*/
#define		ERROR_FORMAT	"ERROR %d %s"
#define		CMD_NICK		"NICK %s"
#define		CMD_USER		"USER %s"
#define		CMD_PASS		"PASS %s"
#define		CMD_PASSWD		"PASSWD %s %s %s"
#define		CMD_PING		"PING"
#define		CMD_PONG		"PONG"
#define		CMD_NOTICE		"NOTICE %s %[^\n]"
#define		CMD_KICK		"KICK %s %s"
#define		CMD_KILL		"KILL %s"
#define		CMD_BAN			"BAN %s %s"
#define		CMD_DEVBAN		"DEBAN %s %s"
#define		CMD_MOTD		"MOTD"
#define		CMD_QUIT		"QUIT"
#define		CMD_INVITE		"INVITE %s %s"
#define		CMD_PROFILE		"PROFILE %s"
#define		CMD_JOIN		"JOIN %s"
#define		CMD_PART		"PART %s"
#define		CMD_TOPIC		"TOPIC %s"
#define		CMD_SETTOPIC	"SETTOPIC %s %[^\n]"
#define		CMD_PV			"PV %s %[^\n]"
#define		CMD_PRIVMSG		"PRIVMSG %s %[^\n]"
#define		CMD_LIST		"LIST"
#define		CMD_USRLIST		"USRLIST %s"
#define		CMD_TABLESLIST	"TABLESLIST"
#define		CMD_CREATE		"CREATE %s %s"


/*	sizes */
#define NICKSIZE	16
#define	USERSIZE	32
#define PASSSIZE	32
#define	HOSTSIZE	64

#define	CMDSIZE		30
#define	TAILSIZE	480

#define TABLENAMESIZE	32
#define	TABLEDESCSIZE	128

#define MODULENAMESIZE  	32
#define MODULEAUTHORSIZE 	32
#define MODULEVERSIONSIZE 	10
#define MODULEDESCSIZE 		128

#define REASONSIZE	32

#define	BUFFERSIZE	512

#define MOTDMAXSIZE	2048

#define MAXCLIENTS	500
#define	MAXTHREADS	10

/*	macros */

#define		settozero(a)		memset(a,0,sizeof(a))
#define		isLetter(car)		(((car>='a')&&(car<='z'))||((car>='A')&&(car<='Z'))||(car=='_'))
#define 		MAX(x,y)		((x<y)?x:y)

#define		SYSFILE		"sysout.log"
#define		MEMFILE		"memfile.log"
#define		NETFILE		"netfile.log"


#endif

